System and method for managing continued attention to distance-learning content

ABSTRACT

Management of a user&#39;s continued attention to distance learning content using a general purpose computer having a central processing unit and an operating system configured to run multiple program applications concurrently. A memory stores the distance learning content. A distance learning module comprises code executable on the central processing unit, as one of the multiple program applications. The distance learning module presents the distance learning content to a user and is operable to interrupt a presentation of the distance learning content in response to prescribed events concerning another one of the multiple program applications. A method executing on a computer that an concurrently run multiple applications identifies events concerning an application other than the distance learning application, processes the identified events so as to identify a prescribed event among the identified events, and interrupts the presentation of the distance learning content in response to the prescribed event.

FIELD OF THE INVENTION

The present invention concerns management of distance learning and, moreparticularly, to a system and method for managing the presentation ofdistance learning content to a user on a computer and for doing so inrelation to any prescribed events that may occur on the same computerduring such presentation and thereby impact a user's attention to thepresentation of the distance learning content.

BACKGROUND OF THE INVENTION

The field of delivering educational materials to students andprofessional who are not on site is referred to as “distance education”or “distance learning.” One of the concerns in this field of educationis to ensure that the participant is present while the course or seminaris being presented. This concern arises because there is no proctor onsite while the educational material is being delivered. The concern isexacerbated, somewhat, by the fact that more and more participants areviewing distance learning content asynchronously within their home oroffice without any peers to encourage attention to the presentedmaterials. In fact, more and more content is available to stream,download or otherwise play on a single machine on a time schedule thatbest suits each individual participant.

Traditionally, gauging the user's presence has been addressed by achallenge to the user to press a button or input a code into a telephoneor computer to confirm presence at one or more times during or at theend of the program. While this approach ensures that the person ispresent, it does little to ensure that the user is paying attentionduring delivery of the distance learning content. As one extremeexample, a course can be streamed to a computer while the user isreading and sending dozens of email messages, and, therefore, there canbe great gaps in the attention given to the presented content.

Thus, while the user may be present, there have been no systems ormethods developed to better ensure the user's continued attention to thedistance learning content itself. Nor have any systems or methods beendeveloped to monitor and respond to other actions taken by theparticipant concurrently during the presentation of distance learningcontent. The present invention addresses one or more of these and otherproblems in the art.

SUMMARY OF THE INVENTION

In accordance with one aspect of the invention, a system to facilitatemanagement of a user's continued attention to distance learning contentcomprises a general purpose computer including a central processing unitand an operating system configured to run multiple program applicationsconcurrently. A memory stores the distance learning content. A distancelearning module comprises code executable on the central processing unitas one of the multiple program applications for presenting the distancelearning content to a user. The module is operable to interrupt apresentation of the distance learning content in response to aprescribed event concerning another one of the multiple programapplications.

In a further, optional aspect, the foregoing system resumes thepresentation of the distance learning content after the prescribed eventconcerning the another one of the multiple program applications hasceased.

In accordance with another aspect of the invention, a system tofacilitate management of a user's continued attention to distancelearning content comprises a general purpose computer including acentral processing unit and an operating system configured to runmultiple program applications concurrently. A memory stores the distancelearning content. A distance learning application comprises codeexecutable on the central processing unit as one of the multiple programapplications for presenting the distance learning content to a user. Theapplication includes a plurality of modules executing on the centralprocessing unit. An event module is operable to identify eventsconcerning another one of the multiple program applications. An eventprocessing module is operable to identify a prescribed event among theidentified events. An action module is operable to interrupt apresentation of the distance learning content in response to theprescribed event.

In accordance with still another aspect of the invention, a methodmethod for ensuring a user's continued attention to distance learningcontent is provided. A distance learning application is that presentsdistance learning content to the user on a display connected to acomputer is executed. The computer has a central processing unit and anoperating system configured to concurrently run multiple programapplications other than the distance learning application. Eventsconcerning one of the multiple program applications other than thedistance learning application are identified using an event moduleexecuting in the processor. The identified events are processed so as toidentify a prescribed event among the identified events using an eventprocessing module executing in the processor. The presentation of thedistance learning content on the display connected to the computer isinterrupted in response to the prescribed event.

In a further, optional aspect, the foregoing method can include theadditional step of resuming the presentation of the distance learningcontent on the display after the prescribed event concerning the one ofthe multiple program applications other than the distance learningapplication has ceased.

These and other features, aspects and advantages of the invention can beappreciated from the following Description of Certain Embodiments of theInvention and the accompanying Drawing Figures.

DESCRIPTION OF THE DRAWING FIGURES

FIG. 1A is an operational flow 100 of an illustrative processimplemented by a system that manages a user's attention to distancelearning content according to one embodiment of the invention;

FIG. 1B is a continuation of the flow diagram of FIG. 1A, that startsafter connector B at the bottom of FIG. 1A.

FIG. 1C is an image of an example presentation of distance learningcontent on a client machine that is being managed using a system andmethod in accordance with the invention;

FIG. 2 is illustrates a network environment in which a system and methodimplementing an embodiment of the invention can be used; and

FIG. 3 illustrates a block diagram of a client machine configured toemploy the system and methods described herein.

DETAILED DESCRIPTION OF CERTAIN EMBODIMENTS OF THE INVENTION

By way of overview and introduction, the present invention is describedin connection with a system and method for the presentation of a seminarin furtherance of satisfying a particular jurisdiction's requirementsthat an attorney has in regard to continuing legal education (CLE), asone specific implementation of a system and method in accordance withthe invention. In the same implementation, additional or differentfeatures and functionalities can be provided to augment thefunctionality described herein that supports management of a user'scontinued attention to distance learning content. As can be appreciated,the same system and method described herein can be deployed with similaradvantage to provide education and training to persons located anywhere,including content delivered for purposes other than CLE. A fewnon-limiting examples are CPD (foreign legal/accounting), CPE foraccountants, CLE (already mentioned), and CME (medical). More generally,the system and method for managing distance learning can be applied in amyriad of sectors in which users have educational requirements tofulfill or regulatory licensing compliancy issues to satisfy, including,without limitation, in furtherance of teaching certification, networkconsultant certification, securities and insurance certification,medical training, engineering and so on.

An operational flow 100 is shown in FIGS. 1A and 1B for an illustrativeprocess implemented by a system that manages a user's attention todistance learning content. The flow 100 is one, non-limitingimplementation of the attention-management functionality of the presentinvention. Distance learning content can take the form of anyinformational data from which a user receives an educational benefit.The informational data, for example, can include, as a non-limiting listof examples, video, audio, textual data that can be presented to theuser through the auspices of a programmed computer, and SCORM compliantE-Learning, in one or more combinations. The distance learning contentitself can vary widely. The content typically includes a visual portionthat is presented to the user on a display associated with his or hercomputer, and can also include an audio portion that is played throughspeakers associated with his or her computer. The invention has utilityboth in regard to the distribution of streamed content to the user andin distance learning programs in which the content is distributed inadvance of presentation to the user, such as by file transfer or as aresult of providing discs and the like to the user.

The distance learning content can be presented to the user by anycomputer system (e.g., general purpose computer) having a memory capableof storing the distance learning content, and a processor capable ofexecuting code for presenting the distance learning content to the user.In FIG. 1C, a client machine 150 that can be used by a user can comprisea conventional computer system, as described in further detail inconnection with FIG. 3, which machine has a processor, memory, and aprogram that configures the processor. The client machine includes avideo display such as a monitor 152, speakers 154, a keyboard 156 and amouse 158 (each, more generally, being an input device), that togethercomprise a user interface.

The client machine 150 can be connected over a heterogeneous network toa content server in order to be provided with distance learning content(as discussed in detail herein), or the client machine 150 can obtaincontent locally through an attached drive, a connectable device, orthrough a local network.

In FIG. 2, multiple client machines such as client machine 150 canconnect to server 270 over a network 210 using various communicationmechanisms to receive distance learning content. For example, the clientmachine 150 can comprise a desktop machine that can connect to thenetwork over an Ethernet or other broadband connection. Alternatively,the client machine can take on a different form and can connect in otherways. For instance, the client machine can comprise a laptop 220A andcan connect to a modern 230 to access the server 270. Additionally, avariety of wireless networks can be utilized to facilitate client-servercommunications. Laptop 220B and tablet PC 240B (e.g., withoutlimitation, an iPad from Apple Computer, Inc.) can connect via aninternal cellular modem or PC Card cellular modem. Tablet PC 240A orPersonal Digital Assistant (PDA) 230B can connect to a wireless accesspoint 250 to communicate with server 270. Alternatively, PDA 230A canconnect using a wireless standard such as Bluetooth or via a wired linkto a cellular phone 260 that can communicate over the network 210 withthe server 270. In some embodiments, the client machine can beimplemented as a terminal that has the ability to present content (e.g.,audio and visual) provided by a remotely executed program.

From the foregoing, it should be understood that the particular hostmachine that presents the e-learning content can vary widely and caninclude future technologies provided that it broadly is understood asincluding a general purpose computer of the type that has a centralprocessing unit, an operating system configured to run multiple programapplications concurrently, a memory that stores the distance learningcontent, and a distance learning module comprising code executable onthe central processing unit as one of the multiple program applications.

The distance learning content can be transmitted to a user's computersystem from a remote location where the content can reside. For example,a remote computer server 270 or remotely located storage system (notshown) can serve as the source for the distance learning content.Alternatively, the distance learning content can be provided locally,such as by accessing a DVD, a flash memory stick or other portablestorage media connected locally to the user's computer system, from alocal area network (LAN) to which the client machine may be connected,or from a database that is accessible to the client machine 150. Forinstance, some employers create content that can be distributed toemployees and other individuals for distance-learning purposes, and inthat case the content can be located on a segment of the employer's LAN,selected by a user, and presented in the same way as described hereinfor remotely-located content.

Referring briefly now to FIG. 3, a block diagram illustrates a clientmachine 150 configured for employment of the methods described herein.Client machine 150 includes a user interface 305, a processor 310, and amemory 315. Client machine 150 may be implemented on a general purposemicrocomputer, such as one of the members of the Sun® Microsystemsfamily of computer systems, one of the members of the IBM® PersonalComputer family, one of the members of the Apple® Computer family, or amyriad other conventional workstation, desktop computer, laptopcomputer, netbook computer, personal digital assistant, and smart phonedevices that are generally available in the marketplace. Although Clientmachine 150 is represented herein as a standalone system, it is notlimited to such, but instead can be coupled to other computer systemsvia the network 210.

Memory 315 is a memory for storing data and instructions suitable forcontrolling the operation of processor 310. An implementation of memory315 can include a random access memory (RAM), a hard drive and a readonly memory (ROM). One of the components stored in memory 315 is aprogram 320.

Program 320 includes instructions for controlling processor 310 toexecute the methods described herein. Program 320 may be implemented asa single module 322 or as a plurality of modules 322A, 322B, . . . 322N(where N is an arbitrary integer) that operate in cooperation with oneanother. Program 320 is contemplated as representing a softwareembodiment of the method described hereinabove. Each module 322comprises code that executes within the processor 310 and configures theprocessor into a limited purpose machine suitable to the task ofperforming the functionality of such module 322. Also, portions of theprogram 320 can be implemented on different machines and communicatewith each other throughout execution of the program. For example, somemodules can execute on the client machine 150 while others execute onthe server 270.

User interface 305 includes an input device, such as a keyboard 156,touch screen, tablet, or speech recognition subsystem for enabling auser to communicate information and command selections to the processor310. The user interface 305 also includes an output device such as adisplay 152 or a printer. In the case of a touch screen, the input andoutput functions are provided by the same structure. A cursor controlsuch as a mouse 158, track-ball, or joy stick, allows the user tomanipulate a cursor on the display for communicating additionalinformation and command selections to processor 310.

While program 320 is indicated as already loaded into memory 315, it maybe configured on a storage media 325 for subsequent loading into memory315. Storage media 325 can be any conventional storage media such as amagnetic tape, an optical storage media, a compact disc, or a floppydisc. Alternatively, storage media 325 can be a random access memory, orother type of electronic storage. The program can be stored and locatedon a remote storage system for provision to the memory 315 by way of thenetwork 210 and the communication port 340.

In operation, the program 320 can take inputs from the memory 315 orfrom a remote data source. Also, the program can generate outputsthrough the user interface 305 or to a remote location via acommunication port 340. The communication port can exchange messages anddata using any number of conventional data transfer schemes andprotocols.

According to at least one embodiment of the present invention, adistance learning management application or module 321 can be loadedonto and executed by the user's machine 150. The distance learningmanagement application 321 is read from either the computer system'slocal memory 320 or downloaded from a remote source (e.g., database,server 270) communicatively coupled to the computer system (e.g., by wayof the network 210). The application 321 is then executed ascomputer-readable code by the computer's central processing unit 310.The application or module 321 includes a player or can access a playeron the client machine and operates to present the distance learningcontent to the user, such as through a web browser on the client machine150. The application or module 321 further includes an event module322A, an event processing module 322B, and an action module 322C, asdescribed further below. The various modules cooperate with one another,passing information therebetween, as so as to effect the presentation ofthe distance learning content as a function of actions taken by the userin regard to other, concurrently executing programs in the clientmachine.

Upon execution of the distance learning management application 321,among other things, the event module 322A monitors whether a user ispaying requisite attention to any distance learning content that iscurrently being presented to the user on the client machine 150. Thismonitoring is of particular significance when the user is required toreceive educational credit by an accrediting agency for observing aparticular educational program or course. For example, a user should notreceive educational credit if they have not paid a certain level ofattention to the generated content associated with a particulareducational program or course. In the case of an attorney, for instance,an online three-credit CLE viewed on the user's computer can ordinarilybe awarded regardless of whether the attorney was paying any attentionto the content being displayed. Thus, in accordance with the presentinvention, the distance learning management application can monitor andmanage any session in which distance learning content is being providedto a recipient-user in order to both monitor and facilitate events thatestablish whether a recipient-user is paying or has paid a requisitelevel of attention to such provided content.

Referring now to FIGS. 1A and 1B, details concerning the management of auser's attention to distance learning content is described. At step 102,the distance learning management application associated with thedistance learning module is launched on the client machine 150 or on amachine that is otherwise controlling the presentation of content to theuser. This can be a result of or coincident with, the selection ofcontent from a content provider, such as server 270. Preferably, testsare performed from time to time to ensure that the managementapplication is executing while the content is being presented at theclient machine 150.

The user can be prompted to log in to the distance learning managementapplication by entering a username and password (step 104). Typically,access to the content is restricted to subscribers and other authorizedusers. If it is the user's first time using the distance learningmanagement application, the user can be required to complete aregistration process prompted by user interactive screens (e.g., entername/address, activation code, etc.) provided by the distance learningapplication (step 104). Upon completion of either the login orregistration process, an optional step can be performed to determinewhether the user is authorized to utilize the distance learningapplication (step 106). For example, if the distance learningapplication is programmed to execute over a predetermined period oftime, the payment of additional subscription fees can be necessary.Under such circumstances, the user's login attempt will fail until suchtime as the payment of subscription fees is satisfied. Informationconcerning the logged-in user and the content that has been viewed aremaintained, preferably by the server 270 and certification of the user'sattendance and presence during one or more programs can be made to aregulatory or administrative agency. As can be appreciated, user's canbe permitted access to content but the certification of the user'sattendance and presence during one or more programs can be withhelduntil such time that the registration process has been completed orsubscription fees have been paid.

Once the user is identified as an authorized subscriber, a selection ofdistance learning content can be displayed at the client machine (step108). The user can now select a learning program or course to watch(step 110). Once the user has selected a learning program or course towatch, the selection is presented on the client machine (FIG. 1B, step112). There are other actions that the user can take once logged-in,such as reviewing which courses have been taken so far, how many coursesneed to be completed before the close of a next compliance-window set bya jurisdiction that sets such requirements (e.g., a biennial CLErequirement window), and setting alerts that can inform the user ofupcoming courses in areas of interest and various compliance deadlines.In short, the content provider can execute a management application (atits server) that can track the attorney's completed CLE credits whileproviding a notification to the user of further credits needed to complywith the attorney's overall CLE requirements. Compliance-standing canalso apply to satisfying any particular educational programrequirements. For example, compliance-standing requirements can beformulated by associations (e.g., the American Bar Association) or bycompanies to define an employee training program. Compliance-standingrequirements can also take the form of regulatory-agency-basededucational requirements. Thus, for example, an organization can berequired to satisfy such regulatory-agency-based educationalrequirements.

Once selected (step 110), the selected distance learning program isprovided to a window 160 on the user's computer display (step 112; seealso FIG. 1C). For example, the distance learning management application321 can display streaming audio/visual data within the window 160corresponding to the selected distance learning program. In addition,the event module 322A executes to monitor whether (and which) otherprograms are running concurrently and generating events.

At this point in the process flow, the selected content is presented onthe client machine until it has reached its end or is paused or stoppedby the user (step 113). In such a case, the process flow loops back toFIG. 1A, step 108 to provide the user with an opportunity to selectdifferent content or take some other action, as previously described.Otherwise, the event module 322A executes, at step 114, to test whetherother programs are running concurrently with the content presented inwindow 160 and are generating events. More specifically, the window 160comprises a process or possibly an end-user application (e.g., aninstance of a web browser) executing on the processor 310 of the clientmachine 150 which is necessary to the presentation of the distancelearning content itself. However, there can be a plurality of otherprocesses running on the processor, some of which are acted upon by theaction module 322C to interrupt the presentation of the distancelearning content to better ensure the user's continued attention to thecontent being presented, as described below.

The test at step 114 identifies whether there might be a basis toconclude that there are other processes that are competing for theuser's attention while the distance learning content is being displayedin the window 160. The distance learning management application 321takes the detected events and analyzes them (step 116) using the eventprocessing module 322B to determine whether to take further action (step118).

Preferably, the event processing module 322B excludes from itsprocessing certain background processes that consume CPU usage yetotherwise comprise events. Such processes can be automaticallyidentified upon launch of the application 321, can be identified in aconfiguration file, or can be identified based on a combination of bothof these techniques. Background processes are those implemented by theclient machine's system rather than by the applications that are run bythe user himself or herself. Some examples include anti-virus programs,spyware detection programs, print spoolers, and other programs that canexecute automatically and require minimal use of display-resources. Asone example, a pop-up notification concerning the receipt of an emailmessage as provided by the Outlook email client application madeavailable by Microsoft Corporation, whether as a client application or aweb-accessed, web-served version (i.e., Outlook Web Access). Theapplication 321 can configure the event processing module 322B to ignoreactive processes that do no more than flash an icon on a tool bar orhave a toast-like pop-up alert such as the pop-up just described. Eachsuch background process that is identified at step 114 can be processedat step 116 as an ignore event. If the event is determined to be anignore event, then the process flow can loop back to step 114 (the “NO”path) to detect further events.

Certain events may not qualify as background processes, but may be soshort in duration as to not require further action by the eventprocessing module 322B or the user. For instance, the event processingmodule 322B can initiate a timer in response to a window 170 opening. Ifthe window is closed within a predetermined, short period of time (e.g.,5-10 seconds), then the event can be processed at step 116 as anignorable event, and the process flow can again loop back to step 114(the “NO” path) to detect further events. On the other hand, if thewindow 170 remains open, or is the active window, or both, for more thanthe predetermined period of time, the event can be processed as one thatrequires action by the action module 322C, at step 118.

Other events that can be detected at step 114 can comprise changes thatare monitored by background processes yet which are related to the useof peripherals associated with the client machine (e.g., a telephone)rather than use of the client machine itself. Such events include, forinstance, timers that are executed within the client machine 150 as acode thread to track use of a telephone. A process of this type can beidentified in a configuration file or otherwise, and can be processed atstep 116 by the event processing module 322B as an event that requiresaction by the action module 322C, even though it has no or minimalimpact on the display 152.

There can be still other events that can be managed based on permissionsor settings established for (or within) the application 321. Forinstance, certain content providers can provide content in an inactivewindow and that content can be processed either as a basis for takingaction at step 118 or as an ignorable event. For example, certainwebsites such as YouTube can stream content to an inactive window, yetthe presentation of a video from that site is not consistent withmaintaining the user's continued attention to distance learning contentthat is being concurrently presented. The detection of a processexecuting in a displayed, yet inactive window can therefore beproscribed by taking action at step 118 using the action module 322C. Onthe other hand, some websites can have asynchronous data pushed to awindow (such as stock quotes) and this type of concurrent programexecution can be permitted as an ignorable event via a loop back to step114. One or more proscribed sites can be logged in a file and referencedby the processing step 116 in connection with a determination as towhether action is to be taken or not based on any events associated withsuch sites. As such, the processing step manages events that can berepresented as stored data within the distance learning application 321itself, which can be updated by the distance learning managementapplication provider (e.g., via software updates downloadable from aremote server).

For any event that is not excludable, the distance learning managementapplication takes further action, at step 118. Actions can beimplemented by the action module 322C which operates, among other ways,to interrupt the presentation of content by the application 321 inresponse to certain events associated with other programs running in theclient machine, until the user takes action within the window 160 orotherwise interacts with the application 321 to confirm that theapplication has the user's attention. Once the user's attention has beenconfirmed, directly or indirectly, the presentation can resume. In part,the action module 322C can cause the following actions in response to anevent processed by the event processing module 322B and determined torequire action: a streamed video can be halted, including anyaccompanying audio tracks, until the user closes the other applicationor makes the window 160 the active window, or otherwise takes steps thatinteract with the client machine 150 to demonstrate that the user'sattention is again being directed to the distance learning content. Inpart, the action taken by the action module 322C can includeincrementing a counter to monitor the frequency or total number ofactionable-events since the distance learning content was firstpresented to the user at step 108. In part, the action taken by theaction module 322C can include a warning displayed to the user withinthe active window 160 or elsewhere that the distance learning contentmay be interrupted and the learning session possibly disqualified if theevent is not ceased.

There are many events that are not-excludable that can result from auser interacting with a program while the distance learning content isbeing presented. For example, it would be inappropriate to ignore orotherwise exclude the user's interaction with an email clientapplication. In other words, if the user is reading and responding toemails, or filing them away while the distance learning content is beingpresented, then his or her attention is divided and the application 321can take action in view of the detection of such events that have beenprocessed at step 116 as being actionable. The same is true if the useris typing at the keyboard, regardless of whether inputs are beingprovided to word processing program, an instant message client, aspreadsheet, or some other program. Preferably, a daemon executing inthe processor 310 is configured to detect that the window 160 presentingthe distance learning content is not currently the active window, and,in that case, any inputs using the keyboard 156 (or any other inputdevice) trigger the application 321 to take action in response to theevent after processing at step 116.

In addition to the actions taken at step 118, if the proscribed activityis not ceased after any warning or within the predetermined period oftime, or if the proscribed activity has occurred a threshold number oftimes since the delivery of the distance learning content began at step108, then the action module 322C takes control of the display of theselected content (step 120). For example, under such circumstances, theaction module 322C can terminate the presentation of the selecteddistance learning content, thereby forcing the user to re-launch theselected content from the beginning. Alternatively, for example, theaction module 322C can pause the transmission and presentation of theselected content, thereby prompting the user to shut-down the processthat prompted the event detected at step 114 prior to resuming playbackof the selected content. These events can impact whether the viewerobtains credit for viewing the content, and can require the user torestart the presentation in order to obtain credit or certification thathe or she participated in the learning session.

In addition to monitoring events, according to some embodiments, thedistance learning management application can also, intermittently (e.g.,regular or irregular intervals), generate validation prompts tointerrogate a user in order to establish whether the user is payingattention to the selected content being displayed (step 122). Forexample, while the user is viewing the selected content, a validationprompt window can pop up on the user's display screen. The validationprompt window can ask the user to enter a particular number (e.g., aunique code) displayed to the user within the prompt window. Such aprompt can be provided by an interrogation module 322D. Responses arecaptured as evidence of the user's presence during delivery of thedistance learning content. According to another example, the user can beprompted to enter a string of words or a unique password known to theuser. In either case, the distance learning management applicationdetermines whether the user has successfully responded to the requestsof the prompt window (step 124). A successful response can constitutethe user entering a correct response to the prompt window within apredetermined time following the display of the prompt window.

If the user fails to respond to the validation prompt window within,say, 30 seconds, the distance learning management application 321, e.g.,using the action module 322C, can take control of the display of theselected content (step 120). Also, the distance learning managementapplication can take control of the display of the selected content(step 120) if the user fails to enter a correct number or string afterrepeated attempts (e.g., three attempts). As previously described, bytaking control of the display of the selected content (step 120), thedistance learning management application can force certain outcomes,depending on the settings established by a firm administrator. Oneoutcome of failing the interrogation is to require the user to re-launcha particular distance learning program in order to earn any credit.

A missed interrogation prompt need not be flagged to the user, at leastin accordance with one possible administrative setting of the distancelearning program. If the user misses the prompt, he or she can bedisqualified from earning credit for the course unless the omission iscured. If the user realizes or is informed that he or she missed avalidation prompt, the user can revert to the point of the last goodvalidation and continue again from that point in the distance learningprogram in order to qualify for credit. On the other hand, if the firm,via the administrative settings, does not allow users to rectifythemselves from the last good validation, other outcome possibilitiesinclude the requirement for administrative interjection in order tooverride the user's omission and qualify the user for credit, or theresetting of the user so that the program can be watched again from thebeginning.

In more particular implementations, a system can include a configurationfile that is managed by an administrator such as a trusted individual ofan employer having multiple persons that are to use the distancelearning application described herein. The configuration file canmaintain relationships in a database among the users, theirjurisdictions and other associations. For instance, the configurationfile can maintain data concerning which states a lawyer is admitted topractice and his or her practice group within a firm, and any othergroupings. Each user can augment his or her profile to inform the systemof courses taken or credits earned outside of the system, and any otherpertinent information.

The methods described herein have been indicated in connection with flowdiagrams that facilitate a description of the principal processes;however, certain blocks can be invoked in an arbitrary order, such aswhen the events drive the program flow such as in an object-orientedprogram implementation. Accordingly, the flow diagrams are to beunderstood as example flows such that the blocks can be invoked in adifferent order than as illustrated.

While the invention has been described in connection with certainembodiments thereof, the invention is not limited to the describedembodiments but rather is more broadly defined by the features recitedin the claims below and equivalents of such features.

1. A computer system to facilitate management of a user's continuedattention to distance learning content, the system comprising: a generalpurpose computer including: a central processing unit and an operatingsystem configured to run multiple program applications concurrently; amemory that stores the distance learning content; and a distancelearning module comprising code executable on the central processingunit as one of the multiple program applications for presenting thedistance learning content to a user and operable to interrupt apresentation of the distance learning content in response to aprescribed event concerning another one of the multiple programapplications.
 2. The system of claim 1, wherein the distance learningmodule is further operable to resume the presentation of the distancelearning content, after the prescribed event concerning the another oneof the multiple program applications has ceased, in response tointeraction with a window presented by the distance learning module. 3.The system of claim 1, further comprising at least one databasecommunicably attached to the general purpose computer.
 4. The system ofclaim 3, wherein the distance learning module is further operable toprovide notification regarding an employee's compliance-standing withcontinuing education requirements.
 5. The system of claim 1, wherein thedistance learning module is further operable to determine an employee'scompliance-standing with continuing education requirements.
 6. Thesystem of claim 1, wherein the distance learning module is furtheroperable to identify and manage employer identified relationships andassociated continuing education requirements.
 7. The system of claim 1,wherein the distance learning module is further operable to identify andmanage continuing education content providers and associated continuingeducation requirements.
 8. The system of claim 1, wherein the distancelearning module is further operable to identify and manage continuingeducation accrediting agency identified relationships and associatedcontinuing education requirements.
 9. The system of claim 1, wherein thedistance learning module is further operable to identify and manageemployee identified relationships and associated continuing educationrequirements.
 10. The system of claim 1, wherein the distance learningmodule is further operable to identify and manage regulatory agencyidentified relationships and associated continuing educationrequirements.
 11. The system of claim 1, wherein the distance learningmodule is further operable to interrogate a user so and capture evidenceof the user's attendance to the distance learning content.
 12. Thesystem of claim 1, wherein the distance learning module is furtheroperable to provide unique codes to a user accessing the distancelearning content to be recorded by a user to evidence the user'sattendance to the distance learning content.
 13. A computer system tofacilitate management of a user's continued attention to distancelearning content, the system comprising: a general purpose computerincluding: a central processing unit and an operating system configuredto run multiple program applications concurrently; a memory that storesthe distance learning content; and a distance learning applicationcomprising code executable on the central processing unit as one of themultiple program applications for presenting the distance learningcontent to a user and including a plurality of modules executing on thecentral processing unit including an event module operable to identifyevents concerning another one of the multiple program applications, anevent processing module operable to identify a prescribed event amongthe identified events, and an action module operable to interrupt apresentation of the distance learning content in response to theprescribed event.
 14. A method for ensuring a user's continued attentionto distance learning content, comprising the steps of: executing adistance learning application that presents distance learning content tothe user on a display connected to a computer, the computer having acentral processing unit, and an operating system configured toconcurrently run multiple program applications other than the distancelearning application; identifying events concerning one of the multipleprogram applications other than the distance learning application usingan event module executing in the processor; processing the identifiedevents so as to identify a prescribed event among the identified eventsusing an event processing module executing in the processor, andinterrupting the presentation of the distance learning content on thedisplay connected to the computer in response to the prescribed event.15. The method of claim 14, further comprising the step of resuming thepresentation of the distance learning content on the display connectedto the computer after the prescribed event concerning the one of themultiple program applications other than the distance learningapplication has ceased.